﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data.SqlClient;

namespace WindowsFormsApplication3
{
    class GestEditorial
    {
        public bool GrabarAutor(CEditorial edit, string rutaBDBiblioteca)
        {
            AccDatBiblioteca datos = new AccDatBiblioteca();
            SqlConnection cnBiblioteca = datos.ObtenerConexion(rutaBDBiblioteca);
            if (cnBiblioteca != null)
            {
                SqlCommand cmd;
                String sql = "Insert Into Editoriales values(";
                sql += "'" + edit.CodEdit + "',";
                sql += "'" + edit.NomEdit + "',";
                sql += "'" + edit.Dir_Edit+ "',";
                sql += "'" + edit.CodPostal + "',";
                sql += "'" + edit.CiudadEdit + "',";
                sql += "'" + edit.PaisEdit + "',";
                sql += "'" + edit.TelEdit + "',";
                sql += "'" + edit.MailEdit + "',";
                sql += "'" + edit.WebEdit + "',";
                sql += "'" + edit.ContacEdit + "',";
                sql += "'" + edit.EstEdit + "')"; 
                cmd = new SqlCommand(sql, cnBiblioteca);
                try
                {
                    cmd.ExecuteNonQuery();
                    return true;
                }
                catch (SqlException ex)
                {
                    return false;
                }
                finally
                {
                    cnBiblioteca.Close();
                }
            }
            else
                return false;
        }           


        public bool ExisteEditorial(String Cod_Edit, string rutaBDBiblioteca)
        {
            AccDatBiblioteca datos = new AccDatBiblioteca();
            SqlConnection cnBiblioteca = datos.ObtenerConexion(rutaBDBiblioteca);
            SqlCommand cmd;
            SqlDataReader dr;
            String sql = "Select * From Editoriales Where Cod_Edit = '" + Cod_Edit + "'";  
            if (cnBiblioteca != null)
            {
                cmd = new SqlCommand(sql, cnBiblioteca);
                try
                {
                    dr = cmd.ExecuteReader();
                    if (dr.Read())
                        return true;
                    else
                        return false;
                }
                catch (SqlException ex)
                {
                    return false;
                }
                finally
                {
                    cnBiblioteca.Close();
                }
            }
            else
                return false;
        }

        public bool EliminarEditorial(CEditorial edit, string rutaBDBiblioteca)
        {
           AccDatBiblioteca datos = new AccDatBiblioteca();
            SqlConnection cnBiblioteca = datos.ObtenerConexion(rutaBDBiblioteca);
            if (cnBiblioteca != null)
            {
                SqlCommand cmd;
                String sql = "spEliminarEditorial";
                cmd = new SqlCommand(sql, cnBiblioteca);
                cmd.CommandType = System.Data.CommandType.StoredProcedure;
                cmd.Parameters.Add("@Cod_Edit", System.Data.SqlDbType.Char).Value = edit.CodEdit;
                 try
                {
                    cmd.ExecuteNonQuery();
                    return true;
                }
                catch (SqlException ex)
                {
                    return false;
                }
                finally
                {
                    cnBiblioteca.Close();
                }
            }
            else
                return false;
        }

        
        public bool ModificarEditorial(CEditorial edit, string rutaBDBiblioteca)
        {
            AccDatBiblioteca datos = new AccDatBiblioteca();
            SqlConnection cnBiblioteca = datos.ObtenerConexion(rutaBDBiblioteca);
            if (cnBiblioteca != null)
            {
                SqlCommand cmd;
                String sql = "spActualizarEditorial";
                cmd = new SqlCommand(sql, cnBiblioteca);
                cmd.CommandType = System.Data.CommandType.StoredProcedure;
                cmd.Parameters.Add("@Cod_Edit", System.Data.SqlDbType.Char).Value = edit.CodEdit;
                cmd.Parameters.Add("@Nom_Edit", System.Data.SqlDbType.VarChar).Value = edit.NomEdit;
                cmd.Parameters.Add("@Dir_Edit", System.Data.SqlDbType.VarChar).Value = edit.Dir_Edit;
                cmd.Parameters.Add("@Cod_Postal", System.Data.SqlDbType.VarChar).Value = edit.CodPostal;
                cmd.Parameters.Add("@Ciudad_Edit", System.Data.SqlDbType.VarChar).Value = edit.CiudadEdit;
                cmd.Parameters.Add("@Pais_Edit", System.Data.SqlDbType.VarChar).Value = edit.PaisEdit;
                cmd.Parameters.Add("@Tel_Edit", System.Data.SqlDbType.VarChar).Value = edit.TelEdit;
                cmd.Parameters.Add("@Mail_Edit", System.Data.SqlDbType.VarChar).Value = edit.MailEdit;
                cmd.Parameters.Add("@Web_Edit", System.Data.SqlDbType.VarChar).Value = edit.WebEdit;
                cmd.Parameters.Add("@Contac_Edit", System.Data.SqlDbType.VarChar).Value = edit.ContacEdit;
                cmd.Parameters.Add("@Est_Edit", System.Data.SqlDbType.Bit).Value = edit.EstEdit;
                
                try
                {
                    cmd.ExecuteNonQuery();
                    return true;
                }
                catch (SqlException ex)
                {
                    return false;
                }
                finally
                {
                    cnBiblioteca.Close();
                }
            }
            else
                return false;
        }
    }
}
